[INFO] fetching crate quick_maths 0.2.1...
[INFO] checking quick_maths-0.2.1 against master#cfbc6d4cf1acbac5c025acf8ed68929caa551df3 for pr-75494-beta
[INFO] extracting crate quick_maths 0.2.1 into /workspace/builds/worker-4/source
[INFO] validating manifest of crates.io crate quick_maths 0.2.1 on toolchain cfbc6d4cf1acbac5c025acf8ed68929caa551df3
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+cfbc6d4cf1acbac5c025acf8ed68929caa551df3" "read-manifest" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] started tweaking crates.io crate quick_maths 0.2.1
[INFO] finished tweaking crates.io crate quick_maths 0.2.1
[INFO] tweaked toml for crates.io crate quick_maths 0.2.1 written to /workspace/builds/worker-4/source/Cargo.toml
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+cfbc6d4cf1acbac5c025acf8ed68929caa551df3" "generate-lockfile" "--manifest-path" "Cargo.toml" "-Zno-index-update", kill_on_drop: false }`
[INFO] running `Command { std: "/workspace/cargo-home/bin/cargo" "+cfbc6d4cf1acbac5c025acf8ed68929caa551df3" "fetch" "--locked" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:a636fd89d022f18117e1dc8fb37a0a009933cdbbe082814857f0e2024962d47c" "/opt/rustwide/cargo-home/bin/cargo" "+cfbc6d4cf1acbac5c025acf8ed68929caa551df3" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] ab4749ca602d5038d8aafd0f77e1e6fc21d6ddd4f672e4b844c645aea1fe5265
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] running `Command { std: "docker" "start" "-a" "ab4749ca602d5038d8aafd0f77e1e6fc21d6ddd4f672e4b844c645aea1fe5265", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "ab4749ca602d5038d8aafd0f77e1e6fc21d6ddd4f672e4b844c645aea1fe5265", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "ab4749ca602d5038d8aafd0f77e1e6fc21d6ddd4f672e4b844c645aea1fe5265", kill_on_drop: false }`
[INFO] [stdout] ab4749ca602d5038d8aafd0f77e1e6fc21d6ddd4f672e4b844c645aea1fe5265
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-4/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "rustops/crates-build-env@sha256:a636fd89d022f18117e1dc8fb37a0a009933cdbbe082814857f0e2024962d47c" "/opt/rustwide/cargo-home/bin/cargo" "+cfbc6d4cf1acbac5c025acf8ed68929caa551df3" "check" "--frozen" "--all" "--all-targets" "--message-format=json", kill_on_drop: false }`
[INFO] [stderr] WARNING: Your kernel does not support swap limit capabilities or the cgroup is not mounted. Memory limited without swap.
[INFO] [stdout] 694e6685d9b8a17f6fdeeb909d260ad909e6b5a8b984c73443a064eb11a6a149
[INFO] running `Command { std: "docker" "start" "-a" "694e6685d9b8a17f6fdeeb909d260ad909e6b5a8b984c73443a064eb11a6a149", kill_on_drop: false }`
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]     Blocking waiting for file lock on package cache
[INFO] [stderr]    Compiling num-traits v0.2.12
[INFO] [stderr]    Compiling num-integer v0.1.43
[INFO] [stderr]    Compiling num-bigint v0.2.6
[INFO] [stderr]    Compiling num-rational v0.2.4
[INFO] [stderr]    Compiling num-complex v0.2.4
[INFO] [stderr]    Compiling num-iter v0.1.41
[INFO] [stderr]     Checking num v0.2.1
[INFO] [stderr]     Checking quick_maths v0.2.1 (/opt/rustwide/workdir)
[INFO] [stdout] error: type parameters must be declared prior to const parameters
[INFO] [stdout]   --> src/mat.rs:13:51
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct Matrix<const M: usize, const N: usize, T = DefaultFloat>(pub Vector<N, Vector<M, T>>);
[INFO] [stdout]    |                  ---------------------------------^---------------- help: reorder the parameters: lifetimes, then types, then consts: `<T, const M: usize, const N: usize>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: type parameters must be declared prior to const parameters
[INFO] [stdout]   --> src/mat.rs:12:10
[INFO] [stdout]    |
[INFO] [stdout] 12 | #[derive(Debug, Copy, Clone, PartialEq, Eq)]
[INFO] [stdout]    |          ^^^^^ help: reorder the parameters: lifetimes, then types, then consts: `<T: ::core::fmt::Debug, const M: usize, const N: usize>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: type parameters must be declared prior to const parameters
[INFO] [stdout]   --> src/mat.rs:12:17
[INFO] [stdout]    |
[INFO] [stdout] 12 | #[derive(Debug, Copy, Clone, PartialEq, Eq)]
[INFO] [stdout]    |                 ^^^^ help: reorder the parameters: lifetimes, then types, then consts: `<T: ::core::marker::Copy, const M: usize, const N: usize>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: type parameters must be declared prior to const parameters
[INFO] [stdout]   --> src/mat.rs:12:23
[INFO] [stdout]    |
[INFO] [stdout] 12 | #[derive(Debug, Copy, Clone, PartialEq, Eq)]
[INFO] [stdout]    |                       ^^^^^ help: reorder the parameters: lifetimes, then types, then consts: `<T: ::core::clone::Clone, const M: usize, const N: usize>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: type parameters must be declared prior to const parameters
[INFO] [stdout]   --> src/mat.rs:12:30
[INFO] [stdout]    |
[INFO] [stdout] 12 | #[derive(Debug, Copy, Clone, PartialEq, Eq)]
[INFO] [stdout]    |                              ^^^^^^^^^ help: reorder the parameters: lifetimes, then types, then consts: `<T: ::core::cmp::PartialEq, const M: usize, const N: usize>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: type parameters must be declared prior to const parameters
[INFO] [stdout]   --> src/mat.rs:12:41
[INFO] [stdout]    |
[INFO] [stdout] 12 | #[derive(Debug, Copy, Clone, PartialEq, Eq)]
[INFO] [stdout]    |                                         ^^ help: reorder the parameters: lifetimes, then types, then consts: `<T: ::core::cmp::Eq, const M: usize, const N: usize>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: type parameters must be declared prior to const parameters
[INFO] [stdout]   --> src/ray.rs:16:22
[INFO] [stdout]    |
[INFO] [stdout] 16 | impl<const N: usize, T> Ray<T, N> {
[INFO] [stdout]    |     -----------------^- help: reorder the parameters: lifetimes, then types, then consts: `<T, const N: usize>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: type parameters must be declared prior to const parameters
[INFO] [stdout]   --> src/ray.rs:21:22
[INFO] [stdout]    |
[INFO] [stdout] 21 | impl<const N: usize, T: Float> Ray<T, N> {
[INFO] [stdout]    |     -----------------^-------- help: reorder the parameters: lifetimes, then types, then consts: `<T: Float, const N: usize>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: type parameters must be declared prior to const parameters
[INFO] [stdout]   --> src/vec.rs:15:35
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct Vector<const N: usize, T = DefaultFloat>(pub [T; N]);
[INFO] [stdout]    |                  -----------------^---------------- help: reorder the parameters: lifetimes, then types, then consts: `<T, const N: usize>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: type parameters must be declared prior to const parameters
[INFO] [stdout]   --> src/vec.rs:14:10
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Copy, Debug, PartialEq, Eq, PartialOrd, Ord)]
[INFO] [stdout]    |          ^^^^ help: reorder the parameters: lifetimes, then types, then consts: `<T: ::core::marker::Copy, const N: usize>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: type parameters must be declared prior to const parameters
[INFO] [stdout]   --> src/vec.rs:14:16
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Copy, Debug, PartialEq, Eq, PartialOrd, Ord)]
[INFO] [stdout]    |                ^^^^^ help: reorder the parameters: lifetimes, then types, then consts: `<T: ::core::fmt::Debug, const N: usize>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: type parameters must be declared prior to const parameters
[INFO] [stdout]   --> src/vec.rs:14:23
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Copy, Debug, PartialEq, Eq, PartialOrd, Ord)]
[INFO] [stdout]    |                       ^^^^^^^^^ help: reorder the parameters: lifetimes, then types, then consts: `<T: ::core::cmp::PartialEq, const N: usize>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: type parameters must be declared prior to const parameters
[INFO] [stdout]   --> src/vec.rs:14:34
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Copy, Debug, PartialEq, Eq, PartialOrd, Ord)]
[INFO] [stdout]    |                                  ^^ help: reorder the parameters: lifetimes, then types, then consts: `<T: ::core::cmp::Eq, const N: usize>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: type parameters must be declared prior to const parameters
[INFO] [stdout]   --> src/vec.rs:14:38
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Copy, Debug, PartialEq, Eq, PartialOrd, Ord)]
[INFO] [stdout]    |                                      ^^^^^^^^^^ help: reorder the parameters: lifetimes, then types, then consts: `<T: ::core::cmp::PartialOrd, const N: usize>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: type parameters must be declared prior to const parameters
[INFO] [stdout]   --> src/vec.rs:14:50
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Copy, Debug, PartialEq, Eq, PartialOrd, Ord)]
[INFO] [stdout]    |                                                  ^^^ help: reorder the parameters: lifetimes, then types, then consts: `<T: ::core::cmp::Ord, const N: usize>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: type parameters must be declared prior to const parameters
[INFO] [stdout]  --> src/dynamics/tensor.rs:7:38
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct DynTensor<const D: usize, T = f32> {
[INFO] [stdout]   |                     -----------------^------- help: reorder the parameters: lifetimes, then types, then consts: `<T, const D: usize>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: type parameters must be declared prior to const parameters
[INFO] [stdout]  --> src/dynamics/tensor.rs:5:10
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[derive(Debug, Clone)]
[INFO] [stdout]   |          ^^^^^ help: reorder the parameters: lifetimes, then types, then consts: `<T: ::core::fmt::Debug, const D: usize>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: type parameters must be declared prior to const parameters
[INFO] [stdout]  --> src/dynamics/tensor.rs:5:17
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[derive(Debug, Clone)]
[INFO] [stdout]   |                 ^^^^^ help: reorder the parameters: lifetimes, then types, then consts: `<T: ::core::clone::Clone, const D: usize>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0554]: `#![feature]` may not be used on the beta release channel
[INFO] [stdout]  --> src/lib.rs:2:1
[INFO] [stdout]   |
[INFO] [stdout] 2 | #![feature(const_generics, maybe_uninit_uninit_array, new_uninit, array_map)]
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: type parameters must be declared prior to const parameters
[INFO] [stdout]   --> src/mat.rs:13:51
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct Matrix<const M: usize, const N: usize, T = DefaultFloat>(pub Vector<N, Vector<M, T>>);
[INFO] [stdout]    |                  ---------------------------------^---------------- help: reorder the parameters: lifetimes, then types, then consts: `<T, const M: usize, const N: usize>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: type parameters must be declared prior to const parameters
[INFO] [stdout]   --> src/mat.rs:12:10
[INFO] [stdout]    |
[INFO] [stdout] 12 | #[derive(Debug, Copy, Clone, PartialEq, Eq)]
[INFO] [stdout]    |          ^^^^^ help: reorder the parameters: lifetimes, then types, then consts: `<T: ::core::fmt::Debug, const M: usize, const N: usize>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: type parameters must be declared prior to const parameters
[INFO] [stdout]   --> src/mat.rs:12:17
[INFO] [stdout]    |
[INFO] [stdout] 12 | #[derive(Debug, Copy, Clone, PartialEq, Eq)]
[INFO] [stdout]    |                 ^^^^ help: reorder the parameters: lifetimes, then types, then consts: `<T: ::core::marker::Copy, const M: usize, const N: usize>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: type parameters must be declared prior to const parameters
[INFO] [stdout]   --> src/mat.rs:12:23
[INFO] [stdout]    |
[INFO] [stdout] 12 | #[derive(Debug, Copy, Clone, PartialEq, Eq)]
[INFO] [stdout]    |                       ^^^^^ help: reorder the parameters: lifetimes, then types, then consts: `<T: ::core::clone::Clone, const M: usize, const N: usize>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: type parameters must be declared prior to const parameters
[INFO] [stdout]   --> src/mat.rs:12:30
[INFO] [stdout]    |
[INFO] [stdout] 12 | #[derive(Debug, Copy, Clone, PartialEq, Eq)]
[INFO] [stdout]    |                              ^^^^^^^^^ help: reorder the parameters: lifetimes, then types, then consts: `<T: ::core::cmp::PartialEq, const M: usize, const N: usize>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: type parameters must be declared prior to const parameters
[INFO] [stdout]   --> src/mat.rs:12:41
[INFO] [stdout]    |
[INFO] [stdout] 12 | #[derive(Debug, Copy, Clone, PartialEq, Eq)]
[INFO] [stdout]    |                                         ^^ help: reorder the parameters: lifetimes, then types, then consts: `<T: ::core::cmp::Eq, const M: usize, const N: usize>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: type parameters must be declared prior to const parameters
[INFO] [stdout]   --> src/ray.rs:16:22
[INFO] [stdout]    |
[INFO] [stdout] 16 | impl<const N: usize, T> Ray<T, N> {
[INFO] [stdout]    |     -----------------^- help: reorder the parameters: lifetimes, then types, then consts: `<T, const N: usize>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: type parameters must be declared prior to const parameters
[INFO] [stdout]   --> src/ray.rs:21:22
[INFO] [stdout]    |
[INFO] [stdout] 21 | impl<const N: usize, T: Float> Ray<T, N> {
[INFO] [stdout]    |     -----------------^-------- help: reorder the parameters: lifetimes, then types, then consts: `<T: Float, const N: usize>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: type parameters must be declared prior to const parameters
[INFO] [stdout]   --> src/vec.rs:15:35
[INFO] [stdout]    |
[INFO] [stdout] 15 | pub struct Vector<const N: usize, T = DefaultFloat>(pub [T; N]);
[INFO] [stdout]    |                  -----------------^---------------- help: reorder the parameters: lifetimes, then types, then consts: `<T, const N: usize>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: type parameters must be declared prior to const parameters
[INFO] [stdout]   --> src/vec.rs:14:10
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Copy, Debug, PartialEq, Eq, PartialOrd, Ord)]
[INFO] [stdout]    |          ^^^^ help: reorder the parameters: lifetimes, then types, then consts: `<T: ::core::marker::Copy, const N: usize>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: type parameters must be declared prior to const parameters
[INFO] [stdout]   --> src/vec.rs:14:16
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Copy, Debug, PartialEq, Eq, PartialOrd, Ord)]
[INFO] [stdout]    |                ^^^^^ help: reorder the parameters: lifetimes, then types, then consts: `<T: ::core::fmt::Debug, const N: usize>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: type parameters must be declared prior to const parameters
[INFO] [stdout]   --> src/vec.rs:14:23
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Copy, Debug, PartialEq, Eq, PartialOrd, Ord)]
[INFO] [stdout]    |                       ^^^^^^^^^ help: reorder the parameters: lifetimes, then types, then consts: `<T: ::core::cmp::PartialEq, const N: usize>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: type parameters must be declared prior to const parameters
[INFO] [stdout]   --> src/vec.rs:14:34
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Copy, Debug, PartialEq, Eq, PartialOrd, Ord)]
[INFO] [stdout]    |                                  ^^ help: reorder the parameters: lifetimes, then types, then consts: `<T: ::core::cmp::Eq, const N: usize>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: type parameters must be declared prior to const parameters
[INFO] [stdout]   --> src/vec.rs:14:38
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Copy, Debug, PartialEq, Eq, PartialOrd, Ord)]
[INFO] [stdout]    |                                      ^^^^^^^^^^ help: reorder the parameters: lifetimes, then types, then consts: `<T: ::core::cmp::PartialOrd, const N: usize>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: type parameters must be declared prior to const parameters
[INFO] [stdout]   --> src/vec.rs:14:50
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Copy, Debug, PartialEq, Eq, PartialOrd, Ord)]
[INFO] [stdout]    |                                                  ^^^ help: reorder the parameters: lifetimes, then types, then consts: `<T: ::core::cmp::Ord, const N: usize>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: type parameters must be declared prior to const parameters
[INFO] [stdout]  --> src/dynamics/tensor.rs:7:38
[INFO] [stdout]   |
[INFO] [stdout] 7 | pub struct DynTensor<const D: usize, T = f32> {
[INFO] [stdout]   |                     -----------------^------- help: reorder the parameters: lifetimes, then types, then consts: `<T, const D: usize>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: type parameters must be declared prior to const parameters
[INFO] [stdout]  --> src/dynamics/tensor.rs:5:10
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[derive(Debug, Clone)]
[INFO] [stdout]   |          ^^^^^ help: reorder the parameters: lifetimes, then types, then consts: `<T: ::core::fmt::Debug, const D: usize>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: type parameters must be declared prior to const parameters
[INFO] [stdout]  --> src/dynamics/tensor.rs:5:17
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[derive(Debug, Clone)]
[INFO] [stdout]   |                 ^^^^^ help: reorder the parameters: lifetimes, then types, then consts: `<T: ::core::clone::Clone, const D: usize>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/mat.rs:190:64
[INFO] [stdout]     |
[INFO] [stdout] 190 | impl<T: Float, const M: usize, const N: usize> Zero for Matrix<M, N, T> {
[INFO] [stdout]     |                                                                ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, M, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/mat.rs:322:47
[INFO] [stdout]     |
[INFO] [stdout] 322 | impl<T: Float, const M: usize> One for Matrix<M, M, T> {
[INFO] [stdout]     |                                               ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, M, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/mat.rs:465:65
[INFO] [stdout]     |
[INFO] [stdout] 465 | impl<T, const M: usize, const N: usize> Index<usize> for Matrix<M, N, T> {
[INFO] [stdout]     |                                                                 ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, M, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/mat.rs:470:68
[INFO] [stdout]     |
[INFO] [stdout] 470 | impl<T, const M: usize, const N: usize> IndexMut<usize> for Matrix<M, N, T> {
[INFO] [stdout]     |                                                                    ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, M, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/mat.rs:12:41
[INFO] [stdout]    |
[INFO] [stdout] 12 | #[derive(Debug, Copy, Clone, PartialEq, Eq)]
[INFO] [stdout]    |                                         ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, M, N>`
[INFO] [stdout]    = note: this error originates in a derive macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/mat.rs:12:30
[INFO] [stdout]    |
[INFO] [stdout] 12 | #[derive(Debug, Copy, Clone, PartialEq, Eq)]
[INFO] [stdout]    |                              ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, M, N>`
[INFO] [stdout]    = note: this error originates in a derive macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/mat.rs:12:23
[INFO] [stdout]    |
[INFO] [stdout] 12 | #[derive(Debug, Copy, Clone, PartialEq, Eq)]
[INFO] [stdout]    |                       ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, M, N>`
[INFO] [stdout]    = note: this error originates in a derive macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/mat.rs:12:10
[INFO] [stdout]    |
[INFO] [stdout] 12 | #[derive(Debug, Copy, Clone, PartialEq, Eq)]
[INFO] [stdout]    |          ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, M, N>`
[INFO] [stdout]    = note: this error originates in a derive macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/mat.rs:476:67
[INFO] [stdout]     |
[INFO] [stdout] 476 |     impl<T: Float, const M: usize, const N: usize> $ty for Matrix<M, N, T>
[INFO] [stdout]     |                                                                   ^
[INFO] [stdout] ...
[INFO] [stdout] 489 | def_op!(Add, add, +);
[INFO] [stdout]     | --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, M, N>`
[INFO] [stdout]     = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/mat.rs:476:67
[INFO] [stdout]     |
[INFO] [stdout] 476 |     impl<T: Float, const M: usize, const N: usize> $ty for Matrix<M, N, T>
[INFO] [stdout]     |                                                                   ^
[INFO] [stdout] ...
[INFO] [stdout] 490 | def_op!(Sub, sub, -);
[INFO] [stdout]     | --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, M, N>`
[INFO] [stdout]     = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/mat.rs:476:67
[INFO] [stdout]     |
[INFO] [stdout] 476 |     impl<T: Float, const M: usize, const N: usize> $ty for Matrix<M, N, T>
[INFO] [stdout]     |                                                                   ^
[INFO] [stdout] ...
[INFO] [stdout] 491 | def_op!(Mul, mul, *);
[INFO] [stdout]     | --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, M, N>`
[INFO] [stdout]     = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/mat.rs:476:67
[INFO] [stdout]     |
[INFO] [stdout] 476 |     impl<T: Float, const M: usize, const N: usize> $ty for Matrix<M, N, T>
[INFO] [stdout]     |                                                                   ^
[INFO] [stdout] ...
[INFO] [stdout] 492 | def_op!(Div, div, /);
[INFO] [stdout]     | --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, M, N>`
[INFO] [stdout]     = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/mat.rs:496:67
[INFO] [stdout]     |
[INFO] [stdout] 496 |     impl<T: Float, const M: usize, const N: usize> $ty for Matrix<M, N, T> {
[INFO] [stdout]     |                                                                   ^
[INFO] [stdout] ...
[INFO] [stdout] 508 | def_scalar_op!(Add<T>, add, +);
[INFO] [stdout]     | ------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, M, N>`
[INFO] [stdout]     = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/mat.rs:496:67
[INFO] [stdout]     |
[INFO] [stdout] 496 |     impl<T: Float, const M: usize, const N: usize> $ty for Matrix<M, N, T> {
[INFO] [stdout]     |                                                                   ^
[INFO] [stdout] ...
[INFO] [stdout] 509 | def_scalar_op!(Sub<T>, sub, -);
[INFO] [stdout]     | ------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, M, N>`
[INFO] [stdout]     = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/mat.rs:496:67
[INFO] [stdout]     |
[INFO] [stdout] 496 |     impl<T: Float, const M: usize, const N: usize> $ty for Matrix<M, N, T> {
[INFO] [stdout]     |                                                                   ^
[INFO] [stdout] ...
[INFO] [stdout] 510 | def_scalar_op!(Mul<T>, mul, *);
[INFO] [stdout]     | ------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, M, N>`
[INFO] [stdout]     = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/mat.rs:496:67
[INFO] [stdout]     |
[INFO] [stdout] 496 |     impl<T: Float, const M: usize, const N: usize> $ty for Matrix<M, N, T> {
[INFO] [stdout]     |                                                                   ^
[INFO] [stdout] ...
[INFO] [stdout] 511 | def_scalar_op!(Div<T>, div, /);
[INFO] [stdout]     | ------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, M, N>`
[INFO] [stdout]     = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/vec.rs:291:47
[INFO] [stdout]     |
[INFO] [stdout] 291 | impl<T, const N: usize> AsRef<[T]> for Vector<N, T> {
[INFO] [stdout]     |                                               ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/vec.rs:297:47
[INFO] [stdout]     |
[INFO] [stdout] 297 | impl<T: Float, const N: usize> One for Vector<N, T> {
[INFO] [stdout]     |                                               ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/vec.rs:304:54
[INFO] [stdout]     |
[INFO] [stdout] 304 | impl<T: Zero + Copy, const N: usize> Zero for Vector<N, T> {
[INFO] [stdout]     |                                                      ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/vec.rs:312:65
[INFO] [stdout]     |
[INFO] [stdout] 312 | impl<R: SliceIndex<[T]>, T, const N: usize> Index<R> for Vector<N, T> {
[INFO] [stdout]     |                                                                 ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/vec.rs:318:68
[INFO] [stdout]     |
[INFO] [stdout] 318 | impl<R: SliceIndex<[T]>, T, const N: usize> IndexMut<R> for Vector<N, T> {
[INFO] [stdout]     |                                                                    ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/vec.rs:323:64
[INFO] [stdout]     |
[INFO] [stdout] 323 | impl<T: Neg<Output = T> + Copy, const N: usize> Neg for Vector<N, T> {
[INFO] [stdout]     |                                                                ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/vec.rs:329:64
[INFO] [stdout]     |
[INFO] [stdout] 329 | impl<T: Not<Output = T> + Copy, const N: usize> Not for Vector<N, T> {
[INFO] [stdout]     |                                                                ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/vec.rs:533:49
[INFO] [stdout]     |
[INFO] [stdout] 533 | impl<T: Clone, const N: usize> Clone for Vector<N, T> {
[INFO] [stdout]     |                                                 ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/vec.rs:14:50
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Copy, Debug, PartialEq, Eq, PartialOrd, Ord)]
[INFO] [stdout]    |                                                  ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout]    = note: this error originates in a derive macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/vec.rs:14:38
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Copy, Debug, PartialEq, Eq, PartialOrd, Ord)]
[INFO] [stdout]    |                                      ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout]    = note: this error originates in a derive macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/vec.rs:14:34
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Copy, Debug, PartialEq, Eq, PartialOrd, Ord)]
[INFO] [stdout]    |                                  ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout]    = note: this error originates in a derive macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/vec.rs:14:23
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Copy, Debug, PartialEq, Eq, PartialOrd, Ord)]
[INFO] [stdout]    |                       ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout]    = note: this error originates in a derive macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/vec.rs:14:16
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Copy, Debug, PartialEq, Eq, PartialOrd, Ord)]
[INFO] [stdout]    |                ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout]    = note: this error originates in a derive macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/vec.rs:338:54
[INFO] [stdout]     |
[INFO] [stdout] 338 |       impl<T: $t + Copy, const N: usize> $t for Vector<N, T> {
[INFO] [stdout]     |                                                        ^
[INFO] [stdout] ...
[INFO] [stdout] 349 | / vec_op!(
[INFO] [stdout] 350 | |   Add, add, +;
[INFO] [stdout] 351 | |   Mul, mul, *;
[INFO] [stdout] 352 | |   Sub, sub, -;
[INFO] [stdout] ...   |
[INFO] [stdout] 359 | |   BitXor, bitxor, ^;
[INFO] [stdout] 360 | | );
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout]     = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/vec.rs:365:57
[INFO] [stdout]     |
[INFO] [stdout] 365 |       impl<T: $t + Copy, const N: usize> $t<T> for Vector<N, T> {
[INFO] [stdout]     |                                                           ^
[INFO] [stdout] ...
[INFO] [stdout] 375 | / scalar_op!(
[INFO] [stdout] 376 | |   Add, add, +;
[INFO] [stdout] 377 | |   Mul, mul, *;
[INFO] [stdout] 378 | |   Sub, sub, -;
[INFO] [stdout] ...   |
[INFO] [stdout] 385 | |   BitXor, bitxor, ^;
[INFO] [stdout] 386 | | );
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout]     = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/vec.rs:391:57
[INFO] [stdout]     |
[INFO] [stdout] 391 |       impl<T: $t + Copy, const N: usize> $t<T> for Vector<N, T> {
[INFO] [stdout]     |                                                           ^
[INFO] [stdout] ...
[INFO] [stdout] 411 | / assign_op!(
[INFO] [stdout] 412 | |   AddAssign, add_assign, +=;
[INFO] [stdout] 413 | |   SubAssign, sub_assign, -=;
[INFO] [stdout] 414 | |   MulAssign, mul_assign, *=;
[INFO] [stdout] ...   |
[INFO] [stdout] 421 | |   BitXorAssign, bitxor_assign, ^=;
[INFO] [stdout] 422 | | );
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout]     = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/vec.rs:399:54
[INFO] [stdout]     |
[INFO] [stdout] 399 |       impl<T: $t + Copy, const N: usize> $t for Vector<N, T> {
[INFO] [stdout]     |                                                        ^
[INFO] [stdout] ...
[INFO] [stdout] 411 | / assign_op!(
[INFO] [stdout] 412 | |   AddAssign, add_assign, +=;
[INFO] [stdout] 413 | |   SubAssign, sub_assign, -=;
[INFO] [stdout] 414 | |   MulAssign, mul_assign, *=;
[INFO] [stdout] ...   |
[INFO] [stdout] 421 | |   BitXorAssign, bitxor_assign, ^=;
[INFO] [stdout] 422 | | );
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout]     = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0554]: `#![feature]` may not be used on the beta release channel
[INFO] [stdout]  --> src/lib.rs:2:1
[INFO] [stdout]   |
[INFO] [stdout] 2 | #![feature(const_generics, maybe_uninit_uninit_array, new_uninit, array_map)]
[INFO] [stdout]   | ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/dynamics/tensor.rs:51:46
[INFO] [stdout]    |
[INFO] [stdout] 51 | impl<T: Float> TensorMul<T, 1> for DynTensor<1, T> {
[INFO] [stdout]    |                                              ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, D>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/dynamics/tensor.rs:67:46
[INFO] [stdout]    |
[INFO] [stdout] 67 | impl<T: Float> TensorMul<T, 1> for DynTensor<2, T> {
[INFO] [stdout]    |                                              ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, D>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]  --> src/dynamics/tensor.rs:5:17
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[derive(Debug, Clone)]
[INFO] [stdout]   |                 ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: type arguments must be provided before constant arguments
[INFO] [stdout]   = help: reorder the arguments: types, then consts: `<T, D>`
[INFO] [stdout]   = note: this error originates in a derive macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]  --> src/dynamics/tensor.rs:5:10
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[derive(Debug, Clone)]
[INFO] [stdout]   |          ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: type arguments must be provided before constant arguments
[INFO] [stdout]   = help: reorder the arguments: types, then consts: `<T, D>`
[INFO] [stdout]   = note: this error originates in a derive macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/dynamics/tensor.rs:108:63
[INFO] [stdout]     |
[INFO] [stdout] 108 |         impl<T: $typ + Copy, const D: usize> $typ for DynTensor<D, T> {
[INFO] [stdout]     |                                                                 ^
[INFO] [stdout] ...
[INFO] [stdout] 122 | / impl_bin_op!(
[INFO] [stdout] 123 | |   impl Mul, mul, *;
[INFO] [stdout] 124 | |   impl Add, add, +;
[INFO] [stdout] 125 | |   impl Sub, sub, -;
[INFO] [stdout] 126 | |   impl Div, div, /;
[INFO] [stdout] 127 | | );
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, D>`
[INFO] [stdout]     = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/mat.rs:16:42
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub type Mat4<T = DefaultFloat> = Matrix<4, 4, T>;
[INFO] [stdout]    |                                          ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, M, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/mat.rs:18:42
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub type Mat3<T = DefaultFloat> = Matrix<3, 3, T>;
[INFO] [stdout]    |                                          ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, M, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/mat.rs:20:42
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub type Mat2<T = DefaultFloat> = Matrix<2, 2, T>;
[INFO] [stdout]    |                                          ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, M, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/mat.rs:22:48
[INFO] [stdout]    |
[INFO] [stdout] 22 | impl<T, const M: usize, const N: usize> Matrix<M, N, T> {
[INFO] [stdout]    |                                                ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, M, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/mat.rs:35:55
[INFO] [stdout]    |
[INFO] [stdout] 35 | impl<T: Float, const M: usize, const N: usize> Matrix<M, N, T> {
[INFO] [stdout]    |                                                       ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, M, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/mat.rs:115:39
[INFO] [stdout]     |
[INFO] [stdout] 115 | impl<T: Float, const M: usize> Matrix<M, M, T> {
[INFO] [stdout]     |                                       ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, M, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/mat.rs:458:32
[INFO] [stdout]     |
[INFO] [stdout] 458 | impl<T, const M: usize> Matrix<M, 1, T> {
[INFO] [stdout]     |                                ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, M, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/mat.rs:561:55
[INFO] [stdout]     |
[INFO] [stdout] 561 | impl<T: Float, const M: usize, const N: usize> Matrix<M, N, T> {
[INFO] [stdout]     |                                                       ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, M, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/mat.rs:13:80
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct Matrix<const M: usize, const N: usize, T = DefaultFloat>(pub Vector<N, Vector<M, T>>);
[INFO] [stdout]    |                                                                                ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]  --> src/ray.rs:9:19
[INFO] [stdout]   |
[INFO] [stdout] 9 |   pub pos: Vector<N, T>,
[INFO] [stdout]   |                   ^
[INFO] [stdout]   |
[INFO] [stdout]   = note: type arguments must be provided before constant arguments
[INFO] [stdout]   = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/ray.rs:10:19
[INFO] [stdout]    |
[INFO] [stdout] 10 |   pub dir: Vector<N, T>,
[INFO] [stdout]    |                   ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/transform.rs:11:19
[INFO] [stdout]    |
[INFO] [stdout] 11 |   pub fwd: Matrix<N, N, T>,
[INFO] [stdout]    |                   ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, M, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/transform.rs:13:20
[INFO] [stdout]    |
[INFO] [stdout] 13 |   pub bkwd: Matrix<N, N, T>,
[INFO] [stdout]    |                    ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, M, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]  --> src/dynamics/tensor.rs:8:17
[INFO] [stdout]   |
[INFO] [stdout] 8 |   shape: Vector<D, usize>,
[INFO] [stdout]   |                 ^
[INFO] [stdout]   |
[INFO] [stdout]   = note: type arguments must be provided before constant arguments
[INFO] [stdout]   = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/mat.rs:12:17
[INFO] [stdout]    |
[INFO] [stdout] 12 | #[derive(Debug, Copy, Clone, PartialEq, Eq)]
[INFO] [stdout]    |                 ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, M, N>`
[INFO] [stdout]    = note: this error originates in a derive macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/mat.rs:36:51
[INFO] [stdout]    |
[INFO] [stdout] 36 |   pub fn dot(&self, vec: &Vector<N, T>) -> Vector<M, T> {
[INFO] [stdout]    |                                                   ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/mat.rs:36:34
[INFO] [stdout]    |
[INFO] [stdout] 36 |   pub fn dot(&self, vec: &Vector<N, T>) -> Vector<M, T> {
[INFO] [stdout]    |                                  ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/mat.rs:43:75
[INFO] [stdout]    |
[INFO] [stdout] 43 |   pub(crate) fn qdot<const Q: usize>(&self, vec: &Vector<Q, T>) -> Vector<M, T> {
[INFO] [stdout]    |                                                                           ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/mat.rs:43:58
[INFO] [stdout]    |
[INFO] [stdout] 43 |   pub(crate) fn qdot<const Q: usize>(&self, vec: &Vector<Q, T>) -> Vector<M, T> {
[INFO] [stdout]    |                                                          ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/mat.rs:53:29
[INFO] [stdout]    |
[INFO] [stdout] 53 |   pub fn t(&self) -> Matrix<N, M, T> {
[INFO] [stdout]    |                             ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, M, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/mat.rs:63:71
[INFO] [stdout]    |
[INFO] [stdout] 63 |   pub fn matmul<const P: usize>(&self, o: &Matrix<N, P, T>) -> Matrix<M, P, T> {
[INFO] [stdout]    |                                                                       ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, M, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/mat.rs:63:51
[INFO] [stdout]    |
[INFO] [stdout] 63 |   pub fn matmul<const P: usize>(&self, o: &Matrix<N, P, T>) -> Matrix<M, P, T> {
[INFO] [stdout]    |                                                   ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, M, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/mat.rs:82:48
[INFO] [stdout]    |
[INFO] [stdout] 82 |   pub fn apply_fn<F, S>(&self, f: F) -> Matrix<M, N, S>
[INFO] [stdout]    |                                                ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, M, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/mat.rs:93:66
[INFO] [stdout]    |
[INFO] [stdout] 93 |   pub fn zxtend<const I: usize, const J: usize>(&self) -> Matrix<I, J, T> {
[INFO] [stdout]    |                                                                  ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, M, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/mat.rs:103:66
[INFO] [stdout]     |
[INFO] [stdout] 103 |   pub fn reduce<const I: usize, const J: usize>(&self) -> Matrix<I, J, T> {
[INFO] [stdout]     |                                                                  ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, M, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/mat.rs:117:30
[INFO] [stdout]     |
[INFO] [stdout] 117 |   pub fn from_diag(v: Vector<M, T>) -> Self {
[INFO] [stdout]     |                              ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/mat.rs:131:50
[INFO] [stdout]     |
[INFO] [stdout] 131 |   pub fn ixtend<const I: usize>(&self) -> Matrix<I, I, T> {
[INFO] [stdout]     |                                                  ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, M, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/mat.rs:160:52
[INFO] [stdout]     |
[INFO] [stdout] 160 |   pub fn usolve(&self, b: &Vector<M, T>) -> Vector<M, T> {
[INFO] [stdout]     |                                                    ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/mat.rs:160:35
[INFO] [stdout]     |
[INFO] [stdout] 160 |   pub fn usolve(&self, b: &Vector<M, T>) -> Vector<M, T> {
[INFO] [stdout]     |                                   ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/mat.rs:173:52
[INFO] [stdout]     |
[INFO] [stdout] 173 |   pub fn lsolve(&self, b: &Vector<M, T>) -> Vector<M, T> {
[INFO] [stdout]     |                                                    ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/mat.rs:173:35
[INFO] [stdout]     |
[INFO] [stdout] 173 |   pub fn lsolve(&self, b: &Vector<M, T>) -> Vector<M, T> {
[INFO] [stdout]     |                                   ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/mat.rs:185:76
[INFO] [stdout]     |
[INFO] [stdout] 185 |   pub fn solve((l, u, p): &(Self, Self, Self), b: &Vector<M, T>) -> Vector<M, T> {
[INFO] [stdout]     |                                                                            ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/mat.rs:185:59
[INFO] [stdout]     |
[INFO] [stdout] 185 |   pub fn solve((l, u, p): &(Self, Self, Self), b: &Vector<M, T>) -> Vector<M, T> {
[INFO] [stdout]     |                                                           ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/vec.rs:20:42
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub type Vec3<T = DefaultFloat> = Vector<3, T>;
[INFO] [stdout]    |                                          ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/vec.rs:18:42
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub type Vec2<T = DefaultFloat> = Vector<2, T>;
[INFO] [stdout]    |                                          ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/vec.rs:23:42
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub type Vec4<T = DefaultFloat> = Vector<4, T>;
[INFO] [stdout]    |                                          ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/mat.rs:459:34
[INFO] [stdout]     |
[INFO] [stdout] 459 |   pub fn squeeze(self) -> Vector<M, T> {
[INFO] [stdout]     |                                  ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/mat.rs:466:24
[INFO] [stdout]     |
[INFO] [stdout] 466 |   type Output = Vector<M, T>;
[INFO] [stdout]     |                        ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/ray.rs:18:26
[INFO] [stdout]    |
[INFO] [stdout] 18 |   pub fn new(pos: Vector<N, T>, dir: Vector<N, T>) -> Self { Ray { pos, dir } }
[INFO] [stdout]    |                          ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/ray.rs:18:45
[INFO] [stdout]    |
[INFO] [stdout] 18 |   pub fn new(pos: Vector<N, T>, dir: Vector<N, T>) -> Self { Ray { pos, dir } }
[INFO] [stdout]    |                                             ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/ray.rs:23:36
[INFO] [stdout]    |
[INFO] [stdout] 23 |   pub fn at(&self, t: T) -> Vector<N, T> { self.pos + self.dir * t }
[INFO] [stdout]    |                                    ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/vec.rs:25:38
[INFO] [stdout]    |
[INFO] [stdout] 25 | impl<T: Copy, const N: usize> Vector<N, T> {
[INFO] [stdout]    |                                      ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/vec.rs:55:32
[INFO] [stdout]    |
[INFO] [stdout] 55 | impl<T, const N: usize> Vector<N, T> {
[INFO] [stdout]    |                                ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/vec.rs:72:38
[INFO] [stdout]    |
[INFO] [stdout] 72 | impl<T: Copy, const N: usize> Vector<N, T> {
[INFO] [stdout]    |                                      ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/vec.rs:85:39
[INFO] [stdout]    |
[INFO] [stdout] 85 | impl<T: Float, const N: usize> Vector<N, T> {
[INFO] [stdout]    |                                       ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/vec.rs:213:29
[INFO] [stdout]     |
[INFO] [stdout] 213 | impl<const N: usize> Vector<N, bool> {
[INFO] [stdout]     |                             ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/vec.rs:449:39
[INFO] [stdout]     |
[INFO] [stdout] 449 | impl<T: Float, const N: usize> Vector<N, T> {
[INFO] [stdout]     |                                       ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/vec.rs:14:10
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Copy, Debug, PartialEq, Eq, PartialOrd, Ord)]
[INFO] [stdout]    |          ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout]    = note: this error originates in a derive macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/vec.rs:31:51
[INFO] [stdout]    |
[INFO] [stdout] 31 |   pub fn apply_fn<F, S>(self, mut f: F) -> Vector<N, S>
[INFO] [stdout]    |                                                   ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/vec.rs:44:43
[INFO] [stdout]    |
[INFO] [stdout] 44 |   pub fn cast<S: From<T>>(self) -> Vector<N, S> { self.apply_fn(|v| v.into()) }
[INFO] [stdout]    |                                           ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/vec.rs:75:56
[INFO] [stdout]    |
[INFO] [stdout] 75 |   pub fn extend<const M: usize>(&self, v: T) -> Vector<M, T> {
[INFO] [stdout]    |                                                        ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/vec.rs:152:50
[INFO] [stdout]     |
[INFO] [stdout] 152 |   pub fn reduce<const M: usize>(&self) -> Vector<M, T> {
[INFO] [stdout]     |                                                  ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/vec.rs:178:37
[INFO] [stdout]     |
[INFO] [stdout] 178 |   pub fn col_vector(self) -> Matrix<N, 1, T> { Matrix(Vector([self])) }
[INFO] [stdout]     |                                     ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, M, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/vec.rs:179:37
[INFO] [stdout]     |
[INFO] [stdout] 179 |   pub fn row_vector(self) -> Matrix<1, N, T> { self.col_vector().t() }
[INFO] [stdout]     |                                     ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, M, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/vec.rs:184:53
[INFO] [stdout]     |
[INFO] [stdout] 184 |   pub fn convolve<const M: usize>(&self, o: &Vector<M, T>) -> Self {
[INFO] [stdout]     |                                                     ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/vec.rs:200:15
[INFO] [stdout]     |
[INFO] [stdout] 200 |   ) -> Vector<M, S> {
[INFO] [stdout]     |               ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/vec.rs:197:18
[INFO] [stdout]     |
[INFO] [stdout] 197 |     idx: &Vector<N, usize>,
[INFO] [stdout]     |                  ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/vec.rs:495:44
[INFO] [stdout]     |
[INFO] [stdout] 495 |   pub fn is_sign_positive(&self) -> Vector<N, bool> { self.apply_fn(T::is_sign_positive) }
[INFO] [stdout]     |                                            ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/vec.rs:497:44
[INFO] [stdout]     |
[INFO] [stdout] 497 |   pub fn is_sign_negative(&self) -> Vector<N, bool> { self.apply_fn(T::is_sign_negative) }
[INFO] [stdout]     |                                            ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/vec.rs:339:28
[INFO] [stdout]     |
[INFO] [stdout] 339 |         type Output = Vector<N, T::Output>;
[INFO] [stdout]     |                              ^
[INFO] [stdout] ...
[INFO] [stdout] 349 | / vec_op!(
[INFO] [stdout] 350 | |   Add, add, +;
[INFO] [stdout] 351 | |   Mul, mul, *;
[INFO] [stdout] 352 | |   Sub, sub, -;
[INFO] [stdout] ...   |
[INFO] [stdout] 359 | |   BitXor, bitxor, ^;
[INFO] [stdout] 360 | | );
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout]     = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/vec.rs:366:28
[INFO] [stdout]     |
[INFO] [stdout] 366 |         type Output = Vector<N, T::Output>;
[INFO] [stdout]     |                              ^
[INFO] [stdout] ...
[INFO] [stdout] 375 | / scalar_op!(
[INFO] [stdout] 376 | |   Add, add, +;
[INFO] [stdout] 377 | |   Mul, mul, *;
[INFO] [stdout] 378 | |   Sub, sub, -;
[INFO] [stdout] ...   |
[INFO] [stdout] 385 | |   BitXor, bitxor, ^;
[INFO] [stdout] 386 | | );
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout]     = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]  --> src/autodiff.rs:9:45
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub type DiffArray<const N: usize> = Vector<N, Var>;
[INFO] [stdout]   |                                             ^
[INFO] [stdout]   |
[INFO] [stdout]   = note: type arguments must be provided before constant arguments
[INFO] [stdout]   = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/dynamics/tensor.rs:13:35
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl<T, const D: usize> DynTensor<D, T> {
[INFO] [stdout]    |                                   ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, D>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/dynamics/tensor.rs:79:32
[INFO] [stdout]    |
[INFO] [stdout] 79 | impl<T, const N: usize> Vector<N, T> {
[INFO] [stdout]    |                                ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/dynamics/tensor.rs:87:54
[INFO] [stdout]    |
[INFO] [stdout] 87 | impl<T: Copy, const N: usize, const M: usize> Matrix<M, N, T> {
[INFO] [stdout]    |                                                      ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, M, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/dynamics/tensor.rs:48:31
[INFO] [stdout]    |
[INFO] [stdout] 48 |   fn dot(&self, rh: DynTensor<I, T>) -> Self::Output;
[INFO] [stdout]    |                               ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, D>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/dynamics/tensor.rs:18:84
[INFO] [stdout]    |
[INFO] [stdout] 18 |   pub fn reshape<const D2: usize>(self, new_shape: Vector<D2, usize>) -> DynTensor<D2, T> {
[INFO] [stdout]    |                                                                                    ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, D>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/dynamics/tensor.rs:18:59
[INFO] [stdout]    |
[INFO] [stdout] 18 |   pub fn reshape<const D2: usize>(self, new_shape: Vector<D2, usize>) -> DynTensor<D2, T> {
[INFO] [stdout]    |                                                           ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/dynamics/tensor.rs:53:32
[INFO] [stdout]    |
[INFO] [stdout] 53 |   fn dot(&self, rhs: DynTensor<1, T>) -> Self::Output {
[INFO] [stdout]    |                                ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, D>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/dynamics/tensor.rs:69:32
[INFO] [stdout]    |
[INFO] [stdout] 69 |   fn dot(&self, rhs: DynTensor<1, T>) -> Self::Output {
[INFO] [stdout]    |                                ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, D>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/dynamics/tensor.rs:80:40
[INFO] [stdout]    |
[INFO] [stdout] 80 |   pub fn dyn_tensor(self) -> DynTensor<1, T> {
[INFO] [stdout]    |                                        ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, D>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/dynamics/tensor.rs:90:40
[INFO] [stdout]    |
[INFO] [stdout] 90 |   pub fn dyn_tensor(self) -> DynTensor<2, T> {
[INFO] [stdout]    |                                        ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, D>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/dynamics/tensor.rs:109:33
[INFO] [stdout]     |
[INFO] [stdout] 109 |           type Output = DynTensor<D, T::Output>;
[INFO] [stdout]     |                                   ^
[INFO] [stdout] ...
[INFO] [stdout] 122 | / impl_bin_op!(
[INFO] [stdout] 123 | |   impl Mul, mul, *;
[INFO] [stdout] 124 | |   impl Add, add, +;
[INFO] [stdout] 125 | |   impl Sub, sub, -;
[INFO] [stdout] 126 | |   impl Div, div, /;
[INFO] [stdout] 127 | | );
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, D>`
[INFO] [stdout]     = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 130 previous errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0554, E0747.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0554`.
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/mat.rs:190:64
[INFO] [stdout]     |
[INFO] [stdout] 190 | impl<T: Float, const M: usize, const N: usize> Zero for Matrix<M, N, T> {
[INFO] [stdout]     |                                                                ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, M, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/mat.rs:322:47
[INFO] [stdout]     |
[INFO] [stdout] 322 | impl<T: Float, const M: usize> One for Matrix<M, M, T> {
[INFO] [stdout]     |                                               ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, M, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/mat.rs:465:65
[INFO] [stdout]     |
[INFO] [stdout] 465 | impl<T, const M: usize, const N: usize> Index<usize> for Matrix<M, N, T> {
[INFO] [stdout]     |                                                                 ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, M, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/mat.rs:470:68
[INFO] [stdout]     |
[INFO] [stdout] 470 | impl<T, const M: usize, const N: usize> IndexMut<usize> for Matrix<M, N, T> {
[INFO] [stdout]     |                                                                    ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, M, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/mat.rs:12:41
[INFO] [stdout]    |
[INFO] [stdout] 12 | #[derive(Debug, Copy, Clone, PartialEq, Eq)]
[INFO] [stdout]    |                                         ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, M, N>`
[INFO] [stdout]    = note: this error originates in a derive macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/mat.rs:12:30
[INFO] [stdout]    |
[INFO] [stdout] 12 | #[derive(Debug, Copy, Clone, PartialEq, Eq)]
[INFO] [stdout]    |                              ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, M, N>`
[INFO] [stdout]    = note: this error originates in a derive macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/mat.rs:12:23
[INFO] [stdout]    |
[INFO] [stdout] 12 | #[derive(Debug, Copy, Clone, PartialEq, Eq)]
[INFO] [stdout]    |                       ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, M, N>`
[INFO] [stdout]    = note: this error originates in a derive macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/mat.rs:12:10
[INFO] [stdout]    |
[INFO] [stdout] 12 | #[derive(Debug, Copy, Clone, PartialEq, Eq)]
[INFO] [stdout]    |          ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, M, N>`
[INFO] [stdout]    = note: this error originates in a derive macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/mat.rs:476:67
[INFO] [stdout]     |
[INFO] [stdout] 476 |     impl<T: Float, const M: usize, const N: usize> $ty for Matrix<M, N, T>
[INFO] [stdout]     |                                                                   ^
[INFO] [stdout] ...
[INFO] [stdout] 489 | def_op!(Add, add, +);
[INFO] [stdout]     | --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, M, N>`
[INFO] [stdout]     = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/mat.rs:476:67
[INFO] [stdout]     |
[INFO] [stdout] 476 |     impl<T: Float, const M: usize, const N: usize> $ty for Matrix<M, N, T>
[INFO] [stdout]     |                                                                   ^
[INFO] [stdout] ...
[INFO] [stdout] 490 | def_op!(Sub, sub, -);
[INFO] [stdout]     | --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, M, N>`
[INFO] [stdout]     = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/mat.rs:476:67
[INFO] [stdout]     |
[INFO] [stdout] 476 |     impl<T: Float, const M: usize, const N: usize> $ty for Matrix<M, N, T>
[INFO] [stdout]     |                                                                   ^
[INFO] [stdout] ...
[INFO] [stdout] 491 | def_op!(Mul, mul, *);
[INFO] [stdout]     | --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, M, N>`
[INFO] [stdout]     = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/mat.rs:476:67
[INFO] [stdout]     |
[INFO] [stdout] 476 |     impl<T: Float, const M: usize, const N: usize> $ty for Matrix<M, N, T>
[INFO] [stdout]     |                                                                   ^
[INFO] [stdout] ...
[INFO] [stdout] 492 | def_op!(Div, div, /);
[INFO] [stdout]     | --------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, M, N>`
[INFO] [stdout]     = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/mat.rs:496:67
[INFO] [stdout]     |
[INFO] [stdout] 496 |     impl<T: Float, const M: usize, const N: usize> $ty for Matrix<M, N, T> {
[INFO] [stdout]     |                                                                   ^
[INFO] [stdout] ...
[INFO] [stdout] 508 | def_scalar_op!(Add<T>, add, +);
[INFO] [stdout]     | ------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, M, N>`
[INFO] [stdout]     = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: could not compile `quick_maths`.
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/mat.rs:496:67
[INFO] [stdout]     |
[INFO] [stdout] 496 |     impl<T: Float, const M: usize, const N: usize> $ty for Matrix<M, N, T> {
[INFO] [stdout]     |                                                                   ^
[INFO] [stdout] ...
[INFO] [stdout] 509 | def_scalar_op!(Sub<T>, sub, -);
[INFO] [stdout]     | ------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, M, N>`
[INFO] [stdout]     = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/mat.rs:496:67
[INFO] [stdout]     |
[INFO] [stdout] 496 |     impl<T: Float, const M: usize, const N: usize> $ty for Matrix<M, N, T> {
[INFO] [stdout]     |                                                                   ^
[INFO] [stdout] ...
[INFO] [stdout] 510 | def_scalar_op!(Mul<T>, mul, *);
[INFO] [stdout]     | ------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, M, N>`
[INFO] [stdout]     = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] To learn more, run the command again with --verbose.
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/mat.rs:496:67
[INFO] [stdout]     |
[INFO] [stdout] 496 |     impl<T: Float, const M: usize, const N: usize> $ty for Matrix<M, N, T> {
[INFO] [stdout]     |                                                                   ^
[INFO] [stdout] ...
[INFO] [stdout] 511 | def_scalar_op!(Div<T>, div, /);
[INFO] [stdout]     | ------------------------------- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, M, N>`
[INFO] [stdout]     = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] warning: build failed, waiting for other jobs to finish...
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/vec.rs:291:47
[INFO] [stdout]     |
[INFO] [stdout] 291 | impl<T, const N: usize> AsRef<[T]> for Vector<N, T> {
[INFO] [stdout]     |                                               ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/vec.rs:297:47
[INFO] [stdout]     |
[INFO] [stdout] 297 | impl<T: Float, const N: usize> One for Vector<N, T> {
[INFO] [stdout]     |                                               ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/vec.rs:304:54
[INFO] [stdout]     |
[INFO] [stdout] 304 | impl<T: Zero + Copy, const N: usize> Zero for Vector<N, T> {
[INFO] [stdout]     |                                                      ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/vec.rs:312:65
[INFO] [stdout]     |
[INFO] [stdout] 312 | impl<R: SliceIndex<[T]>, T, const N: usize> Index<R> for Vector<N, T> {
[INFO] [stdout]     |                                                                 ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/vec.rs:318:68
[INFO] [stdout]     |
[INFO] [stdout] 318 | impl<R: SliceIndex<[T]>, T, const N: usize> IndexMut<R> for Vector<N, T> {
[INFO] [stdout]     |                                                                    ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/vec.rs:323:64
[INFO] [stdout]     |
[INFO] [stdout] 323 | impl<T: Neg<Output = T> + Copy, const N: usize> Neg for Vector<N, T> {
[INFO] [stdout]     |                                                                ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/vec.rs:329:64
[INFO] [stdout]     |
[INFO] [stdout] 329 | impl<T: Not<Output = T> + Copy, const N: usize> Not for Vector<N, T> {
[INFO] [stdout]     |                                                                ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/vec.rs:533:49
[INFO] [stdout]     |
[INFO] [stdout] 533 | impl<T: Clone, const N: usize> Clone for Vector<N, T> {
[INFO] [stdout]     |                                                 ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/vec.rs:14:50
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Copy, Debug, PartialEq, Eq, PartialOrd, Ord)]
[INFO] [stdout]    |                                                  ^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout]    = note: this error originates in a derive macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/vec.rs:14:38
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Copy, Debug, PartialEq, Eq, PartialOrd, Ord)]
[INFO] [stdout]    |                                      ^^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout]    = note: this error originates in a derive macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/vec.rs:14:34
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Copy, Debug, PartialEq, Eq, PartialOrd, Ord)]
[INFO] [stdout]    |                                  ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout]    = note: this error originates in a derive macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/vec.rs:14:23
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Copy, Debug, PartialEq, Eq, PartialOrd, Ord)]
[INFO] [stdout]    |                       ^^^^^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout]    = note: this error originates in a derive macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/vec.rs:14:16
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Copy, Debug, PartialEq, Eq, PartialOrd, Ord)]
[INFO] [stdout]    |                ^^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout]    = note: this error originates in a derive macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/vec.rs:338:54
[INFO] [stdout]     |
[INFO] [stdout] 338 |       impl<T: $t + Copy, const N: usize> $t for Vector<N, T> {
[INFO] [stdout]     |                                                        ^
[INFO] [stdout] ...
[INFO] [stdout] 349 | / vec_op!(
[INFO] [stdout] 350 | |   Add, add, +;
[INFO] [stdout] 351 | |   Mul, mul, *;
[INFO] [stdout] 352 | |   Sub, sub, -;
[INFO] [stdout] ...   |
[INFO] [stdout] 359 | |   BitXor, bitxor, ^;
[INFO] [stdout] 360 | | );
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout]     = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/vec.rs:365:57
[INFO] [stdout]     |
[INFO] [stdout] 365 |       impl<T: $t + Copy, const N: usize> $t<T> for Vector<N, T> {
[INFO] [stdout]     |                                                           ^
[INFO] [stdout] ...
[INFO] [stdout] 375 | / scalar_op!(
[INFO] [stdout] 376 | |   Add, add, +;
[INFO] [stdout] 377 | |   Mul, mul, *;
[INFO] [stdout] 378 | |   Sub, sub, -;
[INFO] [stdout] ...   |
[INFO] [stdout] 385 | |   BitXor, bitxor, ^;
[INFO] [stdout] 386 | | );
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout]     = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/vec.rs:391:57
[INFO] [stdout]     |
[INFO] [stdout] 391 |       impl<T: $t + Copy, const N: usize> $t<T> for Vector<N, T> {
[INFO] [stdout]     |                                                           ^
[INFO] [stdout] ...
[INFO] [stdout] 411 | / assign_op!(
[INFO] [stdout] 412 | |   AddAssign, add_assign, +=;
[INFO] [stdout] 413 | |   SubAssign, sub_assign, -=;
[INFO] [stdout] 414 | |   MulAssign, mul_assign, *=;
[INFO] [stdout] ...   |
[INFO] [stdout] 421 | |   BitXorAssign, bitxor_assign, ^=;
[INFO] [stdout] 422 | | );
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout]     = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/vec.rs:399:54
[INFO] [stdout]     |
[INFO] [stdout] 399 |       impl<T: $t + Copy, const N: usize> $t for Vector<N, T> {
[INFO] [stdout]     |                                                        ^
[INFO] [stdout] ...
[INFO] [stdout] 411 | / assign_op!(
[INFO] [stdout] 412 | |   AddAssign, add_assign, +=;
[INFO] [stdout] 413 | |   SubAssign, sub_assign, -=;
[INFO] [stdout] 414 | |   MulAssign, mul_assign, *=;
[INFO] [stdout] ...   |
[INFO] [stdout] 421 | |   BitXorAssign, bitxor_assign, ^=;
[INFO] [stdout] 422 | | );
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout]     = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/dynamics/tensor.rs:51:46
[INFO] [stdout]    |
[INFO] [stdout] 51 | impl<T: Float> TensorMul<T, 1> for DynTensor<1, T> {
[INFO] [stdout]    |                                              ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, D>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/dynamics/tensor.rs:67:46
[INFO] [stdout]    |
[INFO] [stdout] 67 | impl<T: Float> TensorMul<T, 1> for DynTensor<2, T> {
[INFO] [stdout]    |                                              ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, D>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]  --> src/dynamics/tensor.rs:5:17
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[derive(Debug, Clone)]
[INFO] [stdout]   |                 ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: type arguments must be provided before constant arguments
[INFO] [stdout]   = help: reorder the arguments: types, then consts: `<T, D>`
[INFO] [stdout]   = note: this error originates in a derive macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]  --> src/dynamics/tensor.rs:5:10
[INFO] [stdout]   |
[INFO] [stdout] 5 | #[derive(Debug, Clone)]
[INFO] [stdout]   |          ^^^^^
[INFO] [stdout]   |
[INFO] [stdout]   = note: type arguments must be provided before constant arguments
[INFO] [stdout]   = help: reorder the arguments: types, then consts: `<T, D>`
[INFO] [stdout]   = note: this error originates in a derive macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/dynamics/tensor.rs:108:63
[INFO] [stdout]     |
[INFO] [stdout] 108 |         impl<T: $typ + Copy, const D: usize> $typ for DynTensor<D, T> {
[INFO] [stdout]     |                                                                 ^
[INFO] [stdout] ...
[INFO] [stdout] 122 | / impl_bin_op!(
[INFO] [stdout] 123 | |   impl Mul, mul, *;
[INFO] [stdout] 124 | |   impl Add, add, +;
[INFO] [stdout] 125 | |   impl Sub, sub, -;
[INFO] [stdout] 126 | |   impl Div, div, /;
[INFO] [stdout] 127 | | );
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, D>`
[INFO] [stdout]     = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/mat.rs:16:42
[INFO] [stdout]    |
[INFO] [stdout] 16 | pub type Mat4<T = DefaultFloat> = Matrix<4, 4, T>;
[INFO] [stdout]    |                                          ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, M, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/mat.rs:18:42
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub type Mat3<T = DefaultFloat> = Matrix<3, 3, T>;
[INFO] [stdout]    |                                          ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, M, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/mat.rs:20:42
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub type Mat2<T = DefaultFloat> = Matrix<2, 2, T>;
[INFO] [stdout]    |                                          ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, M, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/mat.rs:22:48
[INFO] [stdout]    |
[INFO] [stdout] 22 | impl<T, const M: usize, const N: usize> Matrix<M, N, T> {
[INFO] [stdout]    |                                                ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, M, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/mat.rs:35:55
[INFO] [stdout]    |
[INFO] [stdout] 35 | impl<T: Float, const M: usize, const N: usize> Matrix<M, N, T> {
[INFO] [stdout]    |                                                       ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, M, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/mat.rs:115:39
[INFO] [stdout]     |
[INFO] [stdout] 115 | impl<T: Float, const M: usize> Matrix<M, M, T> {
[INFO] [stdout]     |                                       ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, M, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/mat.rs:458:32
[INFO] [stdout]     |
[INFO] [stdout] 458 | impl<T, const M: usize> Matrix<M, 1, T> {
[INFO] [stdout]     |                                ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, M, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/mat.rs:561:55
[INFO] [stdout]     |
[INFO] [stdout] 561 | impl<T: Float, const M: usize, const N: usize> Matrix<M, N, T> {
[INFO] [stdout]     |                                                       ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, M, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/mat.rs:13:80
[INFO] [stdout]    |
[INFO] [stdout] 13 | pub struct Matrix<const M: usize, const N: usize, T = DefaultFloat>(pub Vector<N, Vector<M, T>>);
[INFO] [stdout]    |                                                                                ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]  --> src/ray.rs:9:19
[INFO] [stdout]   |
[INFO] [stdout] 9 |   pub pos: Vector<N, T>,
[INFO] [stdout]   |                   ^
[INFO] [stdout]   |
[INFO] [stdout]   = note: type arguments must be provided before constant arguments
[INFO] [stdout]   = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/ray.rs:10:19
[INFO] [stdout]    |
[INFO] [stdout] 10 |   pub dir: Vector<N, T>,
[INFO] [stdout]    |                   ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/transform.rs:11:19
[INFO] [stdout]    |
[INFO] [stdout] 11 |   pub fwd: Matrix<N, N, T>,
[INFO] [stdout]    |                   ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, M, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/transform.rs:13:20
[INFO] [stdout]    |
[INFO] [stdout] 13 |   pub bkwd: Matrix<N, N, T>,
[INFO] [stdout]    |                    ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, M, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]  --> src/dynamics/tensor.rs:8:17
[INFO] [stdout]   |
[INFO] [stdout] 8 |   shape: Vector<D, usize>,
[INFO] [stdout]   |                 ^
[INFO] [stdout]   |
[INFO] [stdout]   = note: type arguments must be provided before constant arguments
[INFO] [stdout]   = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/mat.rs:12:17
[INFO] [stdout]    |
[INFO] [stdout] 12 | #[derive(Debug, Copy, Clone, PartialEq, Eq)]
[INFO] [stdout]    |                 ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, M, N>`
[INFO] [stdout]    = note: this error originates in a derive macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/mat.rs:36:51
[INFO] [stdout]    |
[INFO] [stdout] 36 |   pub fn dot(&self, vec: &Vector<N, T>) -> Vector<M, T> {
[INFO] [stdout]    |                                                   ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/mat.rs:36:34
[INFO] [stdout]    |
[INFO] [stdout] 36 |   pub fn dot(&self, vec: &Vector<N, T>) -> Vector<M, T> {
[INFO] [stdout]    |                                  ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/mat.rs:43:75
[INFO] [stdout]    |
[INFO] [stdout] 43 |   pub(crate) fn qdot<const Q: usize>(&self, vec: &Vector<Q, T>) -> Vector<M, T> {
[INFO] [stdout]    |                                                                           ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/mat.rs:43:58
[INFO] [stdout]    |
[INFO] [stdout] 43 |   pub(crate) fn qdot<const Q: usize>(&self, vec: &Vector<Q, T>) -> Vector<M, T> {
[INFO] [stdout]    |                                                          ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/mat.rs:53:29
[INFO] [stdout]    |
[INFO] [stdout] 53 |   pub fn t(&self) -> Matrix<N, M, T> {
[INFO] [stdout]    |                             ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, M, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/mat.rs:63:71
[INFO] [stdout]    |
[INFO] [stdout] 63 |   pub fn matmul<const P: usize>(&self, o: &Matrix<N, P, T>) -> Matrix<M, P, T> {
[INFO] [stdout]    |                                                                       ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, M, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/mat.rs:63:51
[INFO] [stdout]    |
[INFO] [stdout] 63 |   pub fn matmul<const P: usize>(&self, o: &Matrix<N, P, T>) -> Matrix<M, P, T> {
[INFO] [stdout]    |                                                   ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, M, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/mat.rs:82:48
[INFO] [stdout]    |
[INFO] [stdout] 82 |   pub fn apply_fn<F, S>(&self, f: F) -> Matrix<M, N, S>
[INFO] [stdout]    |                                                ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, M, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/mat.rs:93:66
[INFO] [stdout]    |
[INFO] [stdout] 93 |   pub fn zxtend<const I: usize, const J: usize>(&self) -> Matrix<I, J, T> {
[INFO] [stdout]    |                                                                  ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, M, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/mat.rs:103:66
[INFO] [stdout]     |
[INFO] [stdout] 103 |   pub fn reduce<const I: usize, const J: usize>(&self) -> Matrix<I, J, T> {
[INFO] [stdout]     |                                                                  ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, M, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/mat.rs:117:30
[INFO] [stdout]     |
[INFO] [stdout] 117 |   pub fn from_diag(v: Vector<M, T>) -> Self {
[INFO] [stdout]     |                              ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/mat.rs:131:50
[INFO] [stdout]     |
[INFO] [stdout] 131 |   pub fn ixtend<const I: usize>(&self) -> Matrix<I, I, T> {
[INFO] [stdout]     |                                                  ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, M, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/mat.rs:160:52
[INFO] [stdout]     |
[INFO] [stdout] 160 |   pub fn usolve(&self, b: &Vector<M, T>) -> Vector<M, T> {
[INFO] [stdout]     |                                                    ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/mat.rs:160:35
[INFO] [stdout]     |
[INFO] [stdout] 160 |   pub fn usolve(&self, b: &Vector<M, T>) -> Vector<M, T> {
[INFO] [stdout]     |                                   ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/mat.rs:173:52
[INFO] [stdout]     |
[INFO] [stdout] 173 |   pub fn lsolve(&self, b: &Vector<M, T>) -> Vector<M, T> {
[INFO] [stdout]     |                                                    ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/mat.rs:173:35
[INFO] [stdout]     |
[INFO] [stdout] 173 |   pub fn lsolve(&self, b: &Vector<M, T>) -> Vector<M, T> {
[INFO] [stdout]     |                                   ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/mat.rs:185:76
[INFO] [stdout]     |
[INFO] [stdout] 185 |   pub fn solve((l, u, p): &(Self, Self, Self), b: &Vector<M, T>) -> Vector<M, T> {
[INFO] [stdout]     |                                                                            ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/mat.rs:185:59
[INFO] [stdout]     |
[INFO] [stdout] 185 |   pub fn solve((l, u, p): &(Self, Self, Self), b: &Vector<M, T>) -> Vector<M, T> {
[INFO] [stdout]     |                                                           ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/vec.rs:20:42
[INFO] [stdout]    |
[INFO] [stdout] 20 | pub type Vec3<T = DefaultFloat> = Vector<3, T>;
[INFO] [stdout]    |                                          ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/vec.rs:18:42
[INFO] [stdout]    |
[INFO] [stdout] 18 | pub type Vec2<T = DefaultFloat> = Vector<2, T>;
[INFO] [stdout]    |                                          ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/vec.rs:23:42
[INFO] [stdout]    |
[INFO] [stdout] 23 | pub type Vec4<T = DefaultFloat> = Vector<4, T>;
[INFO] [stdout]    |                                          ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/mat.rs:459:34
[INFO] [stdout]     |
[INFO] [stdout] 459 |   pub fn squeeze(self) -> Vector<M, T> {
[INFO] [stdout]     |                                  ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/mat.rs:466:24
[INFO] [stdout]     |
[INFO] [stdout] 466 |   type Output = Vector<M, T>;
[INFO] [stdout]     |                        ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/ray.rs:18:26
[INFO] [stdout]    |
[INFO] [stdout] 18 |   pub fn new(pos: Vector<N, T>, dir: Vector<N, T>) -> Self { Ray { pos, dir } }
[INFO] [stdout]    |                          ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/ray.rs:18:45
[INFO] [stdout]    |
[INFO] [stdout] 18 |   pub fn new(pos: Vector<N, T>, dir: Vector<N, T>) -> Self { Ray { pos, dir } }
[INFO] [stdout]    |                                             ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/ray.rs:23:36
[INFO] [stdout]    |
[INFO] [stdout] 23 |   pub fn at(&self, t: T) -> Vector<N, T> { self.pos + self.dir * t }
[INFO] [stdout]    |                                    ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/vec.rs:25:38
[INFO] [stdout]    |
[INFO] [stdout] 25 | impl<T: Copy, const N: usize> Vector<N, T> {
[INFO] [stdout]    |                                      ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/vec.rs:55:32
[INFO] [stdout]    |
[INFO] [stdout] 55 | impl<T, const N: usize> Vector<N, T> {
[INFO] [stdout]    |                                ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/vec.rs:72:38
[INFO] [stdout]    |
[INFO] [stdout] 72 | impl<T: Copy, const N: usize> Vector<N, T> {
[INFO] [stdout]    |                                      ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/vec.rs:85:39
[INFO] [stdout]    |
[INFO] [stdout] 85 | impl<T: Float, const N: usize> Vector<N, T> {
[INFO] [stdout]    |                                       ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/vec.rs:213:29
[INFO] [stdout]     |
[INFO] [stdout] 213 | impl<const N: usize> Vector<N, bool> {
[INFO] [stdout]     |                             ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/vec.rs:449:39
[INFO] [stdout]     |
[INFO] [stdout] 449 | impl<T: Float, const N: usize> Vector<N, T> {
[INFO] [stdout]     |                                       ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/vec.rs:14:10
[INFO] [stdout]    |
[INFO] [stdout] 14 | #[derive(Copy, Debug, PartialEq, Eq, PartialOrd, Ord)]
[INFO] [stdout]    |          ^^^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout]    = note: this error originates in a derive macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/vec.rs:31:51
[INFO] [stdout]    |
[INFO] [stdout] 31 |   pub fn apply_fn<F, S>(self, mut f: F) -> Vector<N, S>
[INFO] [stdout]    |                                                   ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/vec.rs:44:43
[INFO] [stdout]    |
[INFO] [stdout] 44 |   pub fn cast<S: From<T>>(self) -> Vector<N, S> { self.apply_fn(|v| v.into()) }
[INFO] [stdout]    |                                           ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/vec.rs:75:56
[INFO] [stdout]    |
[INFO] [stdout] 75 |   pub fn extend<const M: usize>(&self, v: T) -> Vector<M, T> {
[INFO] [stdout]    |                                                        ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/vec.rs:152:50
[INFO] [stdout]     |
[INFO] [stdout] 152 |   pub fn reduce<const M: usize>(&self) -> Vector<M, T> {
[INFO] [stdout]     |                                                  ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/vec.rs:178:37
[INFO] [stdout]     |
[INFO] [stdout] 178 |   pub fn col_vector(self) -> Matrix<N, 1, T> { Matrix(Vector([self])) }
[INFO] [stdout]     |                                     ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, M, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/vec.rs:179:37
[INFO] [stdout]     |
[INFO] [stdout] 179 |   pub fn row_vector(self) -> Matrix<1, N, T> { self.col_vector().t() }
[INFO] [stdout]     |                                     ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, M, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/vec.rs:184:53
[INFO] [stdout]     |
[INFO] [stdout] 184 |   pub fn convolve<const M: usize>(&self, o: &Vector<M, T>) -> Self {
[INFO] [stdout]     |                                                     ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/vec.rs:200:15
[INFO] [stdout]     |
[INFO] [stdout] 200 |   ) -> Vector<M, S> {
[INFO] [stdout]     |               ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/vec.rs:197:18
[INFO] [stdout]     |
[INFO] [stdout] 197 |     idx: &Vector<N, usize>,
[INFO] [stdout]     |                  ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/vec.rs:495:44
[INFO] [stdout]     |
[INFO] [stdout] 495 |   pub fn is_sign_positive(&self) -> Vector<N, bool> { self.apply_fn(T::is_sign_positive) }
[INFO] [stdout]     |                                            ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/vec.rs:497:44
[INFO] [stdout]     |
[INFO] [stdout] 497 |   pub fn is_sign_negative(&self) -> Vector<N, bool> { self.apply_fn(T::is_sign_negative) }
[INFO] [stdout]     |                                            ^
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/vec.rs:339:28
[INFO] [stdout]     |
[INFO] [stdout] 339 |         type Output = Vector<N, T::Output>;
[INFO] [stdout]     |                              ^
[INFO] [stdout] ...
[INFO] [stdout] 349 | / vec_op!(
[INFO] [stdout] 350 | |   Add, add, +;
[INFO] [stdout] 351 | |   Mul, mul, *;
[INFO] [stdout] 352 | |   Sub, sub, -;
[INFO] [stdout] ...   |
[INFO] [stdout] 359 | |   BitXor, bitxor, ^;
[INFO] [stdout] 360 | | );
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout]     = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/vec.rs:366:28
[INFO] [stdout]     |
[INFO] [stdout] 366 |         type Output = Vector<N, T::Output>;
[INFO] [stdout]     |                              ^
[INFO] [stdout] ...
[INFO] [stdout] 375 | / scalar_op!(
[INFO] [stdout] 376 | |   Add, add, +;
[INFO] [stdout] 377 | |   Mul, mul, *;
[INFO] [stdout] 378 | |   Sub, sub, -;
[INFO] [stdout] ...   |
[INFO] [stdout] 385 | |   BitXor, bitxor, ^;
[INFO] [stdout] 386 | | );
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout]     = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]  --> src/autodiff.rs:9:45
[INFO] [stdout]   |
[INFO] [stdout] 9 | pub type DiffArray<const N: usize> = Vector<N, Var>;
[INFO] [stdout]   |                                             ^
[INFO] [stdout]   |
[INFO] [stdout]   = note: type arguments must be provided before constant arguments
[INFO] [stdout]   = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stderr] error: build failed
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/dynamics/tensor.rs:13:35
[INFO] [stdout]    |
[INFO] [stdout] 13 | impl<T, const D: usize> DynTensor<D, T> {
[INFO] [stdout]    |                                   ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, D>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/dynamics/tensor.rs:79:32
[INFO] [stdout]    |
[INFO] [stdout] 79 | impl<T, const N: usize> Vector<N, T> {
[INFO] [stdout]    |                                ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/dynamics/tensor.rs:87:54
[INFO] [stdout]    |
[INFO] [stdout] 87 | impl<T: Copy, const N: usize, const M: usize> Matrix<M, N, T> {
[INFO] [stdout]    |                                                      ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, M, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/dynamics/tensor.rs:48:31
[INFO] [stdout]    |
[INFO] [stdout] 48 |   fn dot(&self, rh: DynTensor<I, T>) -> Self::Output;
[INFO] [stdout]    |                               ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, D>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/dynamics/tensor.rs:18:84
[INFO] [stdout]    |
[INFO] [stdout] 18 |   pub fn reshape<const D2: usize>(self, new_shape: Vector<D2, usize>) -> DynTensor<D2, T> {
[INFO] [stdout]    |                                                                                    ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, D>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/dynamics/tensor.rs:18:59
[INFO] [stdout]    |
[INFO] [stdout] 18 |   pub fn reshape<const D2: usize>(self, new_shape: Vector<D2, usize>) -> DynTensor<D2, T> {
[INFO] [stdout]    |                                                           ^^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, N>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/dynamics/tensor.rs:53:32
[INFO] [stdout]    |
[INFO] [stdout] 53 |   fn dot(&self, rhs: DynTensor<1, T>) -> Self::Output {
[INFO] [stdout]    |                                ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, D>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/dynamics/tensor.rs:69:32
[INFO] [stdout]    |
[INFO] [stdout] 69 |   fn dot(&self, rhs: DynTensor<1, T>) -> Self::Output {
[INFO] [stdout]    |                                ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, D>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/dynamics/tensor.rs:80:40
[INFO] [stdout]    |
[INFO] [stdout] 80 |   pub fn dyn_tensor(self) -> DynTensor<1, T> {
[INFO] [stdout]    |                                        ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, D>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]   --> src/dynamics/tensor.rs:90:40
[INFO] [stdout]    |
[INFO] [stdout] 90 |   pub fn dyn_tensor(self) -> DynTensor<2, T> {
[INFO] [stdout]    |                                        ^
[INFO] [stdout]    |
[INFO] [stdout]    = note: type arguments must be provided before constant arguments
[INFO] [stdout]    = help: reorder the arguments: types, then consts: `<T, D>`
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error[E0747]: constant provided when a type was expected
[INFO] [stdout]    --> src/dynamics/tensor.rs:109:33
[INFO] [stdout]     |
[INFO] [stdout] 109 |           type Output = DynTensor<D, T::Output>;
[INFO] [stdout]     |                                   ^
[INFO] [stdout] ...
[INFO] [stdout] 122 | / impl_bin_op!(
[INFO] [stdout] 123 | |   impl Mul, mul, *;
[INFO] [stdout] 124 | |   impl Add, add, +;
[INFO] [stdout] 125 | |   impl Sub, sub, -;
[INFO] [stdout] 126 | |   impl Div, div, /;
[INFO] [stdout] 127 | | );
[INFO] [stdout]     | |__- in this macro invocation
[INFO] [stdout]     |
[INFO] [stdout]     = note: type arguments must be provided before constant arguments
[INFO] [stdout]     = help: reorder the arguments: types, then consts: `<T, D>`
[INFO] [stdout]     = note: this error originates in a macro (in Nightly builds, run with -Z macro-backtrace for more info)
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] error: aborting due to 130 previous errors
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] Some errors have detailed explanations: E0554, E0747.
[INFO] [stdout] 
[INFO] [stdout] For more information about an error, try `rustc --explain E0554`.
[INFO] [stdout] 
[INFO] running `Command { std: "docker" "inspect" "694e6685d9b8a17f6fdeeb909d260ad909e6b5a8b984c73443a064eb11a6a149", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "694e6685d9b8a17f6fdeeb909d260ad909e6b5a8b984c73443a064eb11a6a149", kill_on_drop: false }`
[INFO] [stdout] 694e6685d9b8a17f6fdeeb909d260ad909e6b5a8b984c73443a064eb11a6a149
